/* eslint-disable no-undef */
import axios from '@/libs/axios'
import {copyObject} from '@/libs/tools'

class Get {
  /**
   * 获取登录信息
   */
  static getLoginInfo(){
    return axios.get("/getLoginInfo");
  }

  /**
   * 获取系统信息
   */
  static getSystemInfo(){
    return axios.get("/getSystemInfo");
  }

  /**
   * 获取用户列表
   */
  static getUserList(params){
    params = {
      orderBy:{
        field:"poi",
        mode:"DESC"
      },
      ...params
    };

    return axios.get("/getUserList",{params})
  }

  /**
   * 获取角色列表
   */
  static getRoleList(){
    return axios.get("/getRoleList");
  }

  /**
   * 获取班级
   */
  static getClassList(){
    return axios.get("/getClassList");
  }

  /**
   * 获取题
   * @param {*} params 
   */
  static getProblemList(params){
    params = {
      orderBy:{
        field:"problem_id",
        mode:"ASC"
      },
      ...params
    };

    return axios.post("/getProblemList",params)
  }

  /**
   * 获取竞赛
   * @param {*} params 
   */
  static getContestList(params){
    params = {
      orderBy:{
        field:"contest_id",
        mode:"DESC"
      },
      ...params
    };

    return axios.get("/getContestList",{params})
  }

  /**
   * 获取指定竞赛id的竞赛题目
   * @param {*} params 
   */
  static getContestProblem(params){
    return axios.get("/getContestProblem", { params })
  }

  /**
   * 获取指定竞赛id的竞赛人员
   * @param {*} params 
   */
  static getContestUser(params){
    return axios.get("/getContestUser", { params })
  }

  /**
   * 获取消息
   * @param {*} params 
   */
  static getMessage(params){
    return axios.get("/getMessage", { params })
  }

  /**
   * 获取程序结果列表
   * @param {*} params 
   */
  static getSolutionList(params){
    return axios.get("/getSolutionList", { params })
  }


  /**
   * 获取排名列表
   * @param {*} params 
   */
  static getRanking(params){
    return axios.get("/getRanking", { params })
  }

  /**
   * 获取题的状态
   * @param {*} params 
   */
  static getProblemStatus(params){
    return axios.get("/getProblemStatus", { params })
  }
  

}

export default Get;